home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 #2 / Ham Radio 2000 - Volume 2.iso / HAMV2 / PACKET / CLU031 / CLUSSE.DOC < prev    next >
Text File  |  1997-08-20  |  66KB  |  1,399 lines

  1.  
  2.  
  3.        ──────────────────────────────────────────────────────────
  4.  
  5.  
  6.                        ╒════════════════════════╕
  7.                        │    C  L  U  S  S  E    │
  8.                        ╘════════════════════════╛
  9.  
  10.             The Free Finnish DX Cluster / Conference System
  11.  
  12.                Version 0.31 - Still Under Construction !
  13.  
  14.  
  15.        ──────────────────────────────────────────────────────────
  16.  
  17.                  Written by Heikki Hannikainen, OH7LZB
  18.  
  19.            Details about contacting the author in section 9.
  20.  
  21.        ──────────────────────────────────────────────────────────
  22.  
  23.  
  24.  
  25.  
  26.   ═══ Index ═══════════════════════════════════════════════════════════════
  27.  
  28.    0. Disclaimer and a licence to use
  29.    1. Introduction to Clusse
  30.       1.1 Design criteria
  31.       1.2 Features
  32.       1.3 Requirements
  33.       1.4 Terminology
  34.       1.5 About this file
  35.       1.6 Other free DX-cluster software available
  36.       1.7 Why BPQ or PC/FlexNet? What are they?
  37.    2. Installation
  38.       2.1 First installation
  39.       2.2 Upgrading from a previous version
  40.       2.3 Some notes on configuring the BPQ switch
  41.       2.4 Some notes on using the PC/FlexNet kernel
  42.    3. Running Clusse
  43.       3.1 Command line parameters
  44.       3.2 Using the console
  45.         3.2.1 Keys
  46.         3.2.1 Console screen layout
  47.         3.2.3 Monitoring window layout
  48.       3.3 Other general (but important) stuff
  49.       3.4 Exit codes
  50.       3.5 Multitasking environments
  51.       3.6 Memory requirements
  52.    4. DX Cluster networking
  53.       4.1 Linking to the PacketCluster network
  54.       4.2 Network topology
  55.       4.3 Listen-only links
  56.       4.4 PacketCluster version compatibility
  57.       4.5 Linking two Clusse systems
  58.    5. Files
  59.       5.1 File descriptions and paths
  60.       5.2 Databases
  61.       5.2.1 PacketCluster-type databases
  62.       5.2.2 The DB0SDX QSL database
  63.       5.2.3 The DXCC database
  64.       5.2.4 The Buckmaster HamCall CD-ROM callbook
  65.       5.2.5 Other CD-ROM callbooks
  66.       5.2.6 Other databases available
  67.       5.3 Miscellaneus notes
  68.    6. Access controls, privilege groups
  69.       6.1 General blah-blah-blah
  70.       6.2 Things NOT to do (general security stuff)
  71.    7. Broadcasting user interface
  72.    8. Troubleshooting
  73.    9. Getting the latest version & contacting the author
  74.       9.1 Clusse distribution sites
  75.       9.2 Clusse mailing lists
  76.       9.3 The author
  77.  
  78.    Appendices:
  79.      A: Things To Do & Known (But Still Unresolved) Bugs
  80.      B: Keeping the lawyers happy
  81.  
  82.    Other documentation files:
  83.      intro.txt:    a QUICK introduction on the software.
  84.      whatsnew.txt: a report on the development history (changes done in
  85.                    each version).
  86.      speech.txt:   documentation for the audio interface.
  87.  
  88.  
  89.   ═══ 0. Disclaimer and a licence to use ══════════════════════════════════
  90.  
  91.          As the chat(8) man page puts it: "If it breaks then you get to keep
  92.        both pieces."
  93.  
  94.          CLUSSE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. THE
  95.        ENTIRE RISK OF USING THIS PRODUCT IS ASSUMED BY YOU. IN NO
  96.        EVENT WILL THE AUTHOR BE LIABLE FOR ANY DAMAGES WHATSOEVER
  97.        ARISING OUT OF YOUR USE OR INABILITY TO USE THE SOFTWARE. BY
  98.        USING THIS PRODUCT, YOU AGREE TO THE ABOVE LIMITATIONS.
  99.  
  100.          I hereby grant any licenced amateur radio operator to use this
  101.        software free of charge. You can modify the program as much as
  102.        you like, as long as you don't remove my signatures or distribute
  103.        the modified versions without my written permission. This software
  104.        may not be used in CB (Citizens Band, 27 MHz) or commercial
  105.        environment without my written permission.
  106.  
  107.          Clusse is not for sale. You may not charge ANY money for
  108.        a copy of Clusse, except for the price of the media used
  109.        for transferring (the disk or the phone bill). Clusse may
  110.        be bundled on a CD-ROM or any other such commercial
  111.        package, for the price of sending me a free copy of the
  112.        product it is bundled with (1 copy per each different product).
  113.        If you think you could utilize Clusse in a commercial environment
  114.        and you are ready to pay for it, contact the author.
  115.  
  116.          This product is meant for educational purposes only. Any
  117.        resemblance to real persons, living or dead is purely coincidental.
  118.        Void where prohibited. Some assembly may be required. Batteries not
  119.        included. Contents may settle during shipment. Use only as directed.
  120.        May be too intense for some viewers. If condition persists, consult
  121.        your physician. No user-serviceable parts inside. Breaking seal
  122.        constitutes acceptance of agreement. Not responsible for direct,
  123.        indirect, incidental or consequential damages resulting from any
  124.        defect, error or failure to perform. Slippery when wet. For office
  125.        use only. Substantial penalty for early withdrawal. Do not write
  126.        below this line. Your cancelled check is your receipt. Avoid contact
  127.        with skin. Employees and their families are not eligible. Beware of
  128.        dog. Driver does not carry cash. Limited time offer, call now to
  129.        insure prompt delivery. Use only in well-ventilated area. Keep away
  130.        from fire or flame. Some equipment shown is optional. Price does
  131.        not include taxes, dealer prep, or delivery. Penalty for private use.
  132.        Call toll free before digging. Some of the trademarks mentioned in
  133.        this product appear for identification purposes only. All models over
  134.        18 years of age. Do not use while operating a motor vehicle or heavy
  135.        equipment. Postage will be paid by addressee. Apply only to affected
  136.        area. One size fits all. Many suitcases look alike. Edited for
  137.        television. No solicitors. Reproduction strictly prohibited.
  138.        Restaurant package, not for resale. Objects in mirror are closer than
  139.        they appear. Decision of judges is final. This supersedes all previous
  140.        notices. No other warranty expressed or implied.
  141.  
  142.  
  143.   ═══ 1. Introduction to Clusse ═══════════════════════════════════════════
  144.  
  145.    1.1 Design criteria
  146.  
  147.          For several years hams have used so called DX clusters for
  148.        distributing information over packet radio. DX spots, weather
  149.        warnings and other announcements. The whole network has been
  150.        using the PacketCluster (TM) commercial software package from
  151.        Pavillion Software.
  152.  
  153.          I wanted to to put up a DX cluster node for the locals to
  154.        use, but found out that the only software available was a bit
  155.        too expensive for our club to buy. What the heck, i thought,
  156.        i didn't like it's user interface anyway...
  157.  
  158.          When constructing Clusse, i've tried to avoid imitating the
  159.        PacketCluster. I forgot the original VMS-stylish user interface,
  160.        and made Clusse look more like any BBS or NOS mailbox. Just because
  161.        i personally don't like the VMS interface too much. I don't really
  162.        care if it's uncompatible, i'm NOT writing a CLONE! No complaints
  163.        on this one, please!
  164.  
  165.          I intend to include all of the original PacketCluster features,
  166.        fix the things that are wrong in it and add a bunch of new
  167.        features. If there's a thing you'd like to see in Clusse, please
  168.        let me know!
  169.  
  170.    1.2 Features
  171.  
  172.        These are the most important features i've already included.
  173.        They're not in order of importance 8-)
  174.  
  175.      - Most of the original PacketCluster features: DX, Announces, Talk,
  176.        Wx, WWV, Users/Nodes information, databases...
  177.      - Links with a PacketCluster (TM) notwork using the stupid PC protocol.
  178.      - A conversd-style conference mode with virtual channels.
  179.      - An indexed help system: The help file is available in Finnish,
  180.        English, Italian, Spanish, Swedish, Norwegian, Czech and German,
  181.        and you are invited to translate the file to your own language.
  182.      - Supports PacketCluster-type databases and the Buckmaster HamCall
  183.        CD-ROM.
  184.      - User-selectable character conversion tables - solves problems with
  185.        different systems to express special language-specific characters
  186.        (Scandinavia, Germany).
  187.      - Uses the G8BPQ Packet Switch TSR code to interface different kinds
  188.        of modem hardware. Thanks to John Wiseman for writing the switch!
  189.        This saves me from including support for many different types
  190.        of interfaces and including ax.25 & net/rom code in Clusse...
  191.      - The PC/FlexNet kernel can be used instead of the G8BPQ switch in
  192.        areas, where FlexNet is used for routing.
  193.  
  194.    1.3  Requirements
  195.  
  196.      - A 286 compatible computer with about 400 Kb of free base memory and
  197.        a hard disk (not required but VERY strongly suggested).
  198.      - MS-DOS 3.0 or newer (Windows 95 & Windows NT & OS/2 can all run
  199.        DOS programs like Clusse, Win95 is used for the development).
  200.      - G8BPQ packet switch version 4.05 or newer or the PC/FlexNet kernel
  201.        (3.3e verified to work).
  202.      - The G8BPQ switch can currently (v4.08a) interface all KISS-type
  203.        TNC's, TheNet-type node stacks running the net/rom interlink protocol,
  204.        other systems that know either KISS or net/rom async (NOS, BPQ),
  205.        Ethernet for interfacing other BPQ and PE1CHL NET switches, many
  206.        brands of HDLC card modems (PacComm PC120, DRSI PC-PA, Thor RCL100,
  207.        BayCom USCC-Karte, PA0HZP OptoPcSCC).
  208.      - PC/FlexNet 3.3e has drivers for (at least) the following hardware:
  209.          * TNC2 TNC's with 6PACK firmware (a KISS driver is supplied, but
  210.            it is claimed to not work well with TNC's, 6PACK overcomes the
  211.            timing problems of KISS)
  212.          * BayCom modems (1200 bit/s serial port modem, 9600 bit/s paraller
  213.            port, USCC and SCC cards)
  214.          * Some sound cards and DSP systems
  215.          * Ethernet trough the following drivers:
  216.             IPX, Packet Drivers, AXIP (only inside a LAN), G8BPQ IPX
  217.          * Lots more... they're writing more drivers too fast for me to
  218.            keep up with!
  219.  
  220.    1.4 Terminology
  221.  
  222.          A DX Cluster is a group of DX Cluster nodes which talk to each
  223.        other. One Clusse or PacketCluster or clx copy running on a
  224.        computer makes up a DX cluster node. It's just a node of a
  225.        cluster, not a dx cluster. In short, a DX node. The terminology
  226.        and the cluster consept comes from the VAX/VMS world.
  227.  
  228.          DX Cluster nodes are not the same as packet network nodes, like
  229.        TheNet/BPQ/CHL-Net/TexNet/FlexNet/you-name-it nodes. The G8BPQ
  230.        switch used when running Clusse can act as a net/rom network node.
  231.        The PC/FlexNet kit includes a FlexNet digipeater TSR.
  232.  
  233.          PacketCluster (TM) is a DX-Cluster node software created by
  234.        Pavillion Software. Clusse is NOT a PacketCluster, it's just
  235.        another DX cluster node software package (a bit cheaper, though).
  236.        Clusse may NOT be called a PacketCluster, because PacketCluster
  237.        is a trademark of Pavillion Software. PacketCluster is often
  238.        referred to as "PC" when speaking of different Cluster software
  239.        products.
  240.  
  241.          Clusse (as stupid as it may sound) is a Finnish nickname for
  242.        the DX cluster system.
  243.  
  244.    1.5 About this file
  245.  
  246.          Like most of us programmers i like programming, but i'm not into
  247.        documenting. I'm sorry, but i can not do much about it. This
  248.        manual is not very accurate and does not go into all the details
  249.        of the software, but it's better than nothing: what can you expect
  250.        to get for free?
  251.  
  252.          All of the user commands are documented in the user help files.
  253.        The configuration files have documentation in them, and this file
  254.        (clusse.doc) is not intended to document those files nor the user
  255.        commands. You can leard things by reading the whatsnew.txt and the
  256.        user help file through.
  257.  
  258.    1.6 Other free DX-cluster software available
  259.  
  260.          CLX runs on the excellent operating system Linux, and its user
  261.        interface is mostly compatible with the PacketCluster. So, if
  262.        you're already familiar with Linux, and you're after a
  263.        PacketCluster clone, go for clx! It's available on the Internet
  264.        on ftp.funet.fi, /pub/ham/unix/Linux/cluster/. The only drawbacks
  265.        are the hardware requirements of Linux (i'd suggest a 486 with
  266.        8 megs of RAM and a 100 MB hard disk as a start) and the fact
  267.        that you have to be quite familiar with Unix administration to
  268.        install the system.
  269.  
  270.          DxNet is a DOS software with a PacketCluster-type user interface.
  271.        It requires the G8BPQ switch like Clusse does. It can be found
  272.        on the Internet at ham.ireste.fr, in the directory
  273.        /pub/Hamradio/DxNet/. The author, Olivier Le Cam, F5MZN, can be
  274.        contacted on the Internet as olecam@imaginet.fr or on packet as
  275.        F5MZN @ F6KPF.FBRE.FRA.EU.
  276.  
  277.    1.7 Why BPQ or PC/FlexNet? What are they?
  278.  
  279.          BPQ is, generally speaking, a NET/ROM node, usually running as
  280.        a TSR (Terminate-and-Stay-Resident, background) application. It
  281.        also includes a kind of Application Programming Interface (API),
  282.        called BPQHOST. Using this API external applications like Clusse
  283.        or FBB can talk to the BPQ switch, and through it to the radio
  284.        interfaces.
  285.  
  286.          The benefit for using the BPQ switch in Clusse is that Clusse
  287.        doesn't need to know about all the different modem/TNC hardware,
  288.        or the AX.25 and NET/ROM protocols, or the serial ports. It only
  289.        needs to know how to talk to the BPQ switch, which is _very_ easy
  290.        to do when compared to supporting all the different hardware
  291.        directly. This allows me to concentrate on programming the
  292.        application itself. Here's a small picture demonstrating the
  293.        configuration:
  294.  
  295.              ┌──────────────┐
  296.              │ TNC or modem ╪══╗ ┌───────────────────┐
  297.              └──────────────┘  ║ │     Computer      │
  298.              ┌──────────────┐  ║ ├─────┐  ┌──────────┤
  299.              │ TNC or modem ╪══╩═╪ BPQ ╪══╪  Clusse  │
  300.              └──────────────┘  ╔═╪     │  │          │
  301.              ┌──────────────┐  ║ └─────┴──┴──────────┘
  302.              │ TNC or modem ╪══╝
  303.              └──────────────┘
  304.  
  305.          Clusse talks with BPQ through so called software interrupts.
  306.  
  307.          PC/FlexNet is similar to BPQ, but far more advanced. Instead of
  308.        the NET/ROM routing protocol, it uses the FlexNet routing system.
  309.        It is modular, so you can use it as a simple AX.25 stack without
  310.        the FlexNet router. All the hardware drivers are in modules, so
  311.        you only need to spend memory on the drivers YOU need. It is
  312.        actively developed (new hardware drivers coming), and much easier
  313.        to set up than BPQ. If you don't need NET/ROM, i recommend
  314.        PC/FlexNet.
  315.  
  316.  
  317.   ═══ 2. Installation ═════════════════════════════════════════════════════
  318.  
  319.    2.1 First installation
  320.  
  321.          I think the program is meant to be installed by people already
  322.        familiar with BBS software and packet networking. Before installing
  323.        this program get your BPQ node or PC/FlexNet running, don't bother
  324.        me with requests for help concerning it... If you can't install it,
  325.        you won't be able to install this one... sorry. For an experienced
  326.        sysop it should be easy to get this up & running.
  327.  
  328.          The latest G8BPQ switch code can be found on the Internet on
  329.        the Clusse web site at http://zone.pspt.fi/clusse/ or on FTP
  330.        at ftp.funet.fi:/pub/ham/packet/g8bpq/. PC/FlexNet can be
  331.        downloaded from the official PC/FlexNet site at
  332.        http://home.pages.de/~flexnet/. That site is maintained by the
  333.        authors. If you see the distribution somewhere else, that site
  334.        is *illegal* due to the rather strict distribution policy set
  335.        by the authors.
  336.  
  337.          Decompress the clu????.zip package using PKUNZIP 2.00 or newer
  338.        in the directory you want to install Clusse in. Remember to use
  339.        the -d command line switch of PKUNZIP to create the necessary
  340.        directories. Saves you from some trouble. I run Clusse from
  341.        c:\clu\, it should be OK for you... but Clusse doesn't care about
  342.        the directory name.
  343.  
  344.          Run setup.exe, go through all the windows in the settings menu,
  345.        and edit the settings to meet your requirements.
  346.  
  347.          Edit all of the .ini files and the files in the text directory.
  348.        They should be self-explanatory, there are comments in each file.
  349.        Remember to read them ALL & edit as necessary!
  350.  
  351.          If you want the user help texts in english, move text\english.hlp
  352.        to text\clusse.hlp. The default file is in Finnish. Other languages
  353.        are available separately on the Clusse distribution sites. If you
  354.        translate the help file to your own language, please let me know,
  355.        so i can include it at the Clusse distribution sites or tell others
  356.        where they can get it!
  357.  
  358.    2.2 Upgrading from a previous version
  359.  
  360.          Take a backup of your clusse directory structure. XCOPY
  361.        c:\clu\ c:\clu.old\ /S should do it. Then extract the
  362.        whatsnew.txt file out from the .ZIP file: pkunzip clu????.zip
  363.        doc\whatsnew.txt. Read all the new sections in the end if the
  364.        file, and take note on what files have changed their format.
  365.  
  366.          Extract the rest of the package with the PKUNZIP -d
  367.        parameter over your previous installation. PKUNZIP doesn't
  368.        overwrite any files without asking you first. Of the configuration
  369.        files, extract only the ones which have changed.
  370.  
  371.          Read and edit all of the changed/new configuration files. Here
  372.        you might need to check some previous settings from the backups!
  373.  
  374.    2.3 Some notes on configuring the BPQ switch
  375.  
  376.          You might want to increase the T3 and IDLETIME values to
  377.        decrease traffic, i use T3=1800 (Check if the user is still
  378.        reachable every 30 minutes) and IDLETIME=21600 (if no traffic
  379.        on a connection for 6 hours, disconnect).
  380.  
  381.          ENABLE_LINKED should be A, to allow console connections to node
  382.        use the console callsign defined in clusse.ini.
  383.  
  384.          No 'COMBIOS' ports are used. Just delete the TNCPORT blocks, if
  385.        you don't need them for some other software (you probably don't).
  386.  
  387.          The UNPROTO address does not affect anything, Clusse sends the
  388.        UI packets as raw AX25 frames trough BPQ. Use the unproto.ini
  389.        file to configure digipeater paths etc.
  390.  
  391.          If you're running Clusse as the only application interfacing to
  392.        BPQ, set "APPLICATIONS=CLU", and Application number in clusse.ini
  393.        to 1.
  394.  
  395.          If you're running Clusse and FBB (or some other software) on the
  396.        same computer, use "APPLICATIONS=BBS,CLU" and application number 2
  397.        for Clusse. FBB has the BBSCALL, and users must connect Clusse via
  398.        the CLU command on the node. You must also tell clusse to use
  399.        BPQ host mode streams that are not used by FBB. When FBB starts up,
  400.        see what stream numbers it initializes, then use the rest for
  401.        Clusse. In FBB, the INITTNC files are used to specify which
  402.        streams and application number FBB uses.
  403.  
  404.    2.4 Some notes on using the PC/FlexNet kernel
  405.  
  406.          I haven't heard any bug reports from people actually using
  407.        Clusse with PC/FlexNet, so i'll guess it works pretty well. 8-)
  408.        Everything works, except console connections to the radio side
  409.        (CTRL-F2). The choice of using the PC/FlexNet interface is made
  410.        in SETUP.EXE.
  411.  
  412.          There's also some difference in the connection script files:
  413.        The first connection is done using the C command. No R line
  414.        after the C line is needed! A sample C command would be:
  415.  
  416.          C "OH7RBA via OH7RBA-2"
  417.  
  418.          If you want to connect through the third port, put the port number
  419.        as the first digipeater, and the digipeaters after the port number:
  420.  
  421.          C "OH7RBA via 2 OH7RBA-2"
  422.  
  423.          After that command, you can use the S and R commands to send
  424.        and receive on the connection, if needed.
  425.  
  426.          If you run PC/FlexNet with Windows 95, load it from autoexec.bat.
  427.        If you get an annoying Performance Warning "A new MS-DOS resident
  428.        program named 'FLEXNET' may decrease your system's performance" on
  429.        startup, add flexnet.exe to \windows\ios.ini. Otherwice, Win95 uses
  430.        DOS compatibility mode for disk access, which IS slow. From version
  431.        3.3f PC/FlexNet supports Windows 95, and this trick is not required.
  432.  
  433.  
  434.   ═══ 3. Running Clusse ═══════════════════════════════════════════════════
  435.  
  436.    3.1 Command line parameters for Clusse.EXE
  437.  
  438.         -h : Parameter help
  439.         -c : Create clusse.chr, a "clean" character translation table.
  440.         -d : Use a different root directory for Clusse files. For example
  441.              "-dc:\clu\". Default is the executable directory.
  442.         -e : Disables expiry
  443.         -i : Release timeslice using the DPMI call, when idle (used under
  444.              multitaskers like Windows and OS/2 to give some more time
  445.              to other applications)
  446.         -m : Disables monitoring code completely
  447.         -n : Disables linking
  448.         -p : Wait for a keypress at startup before switching to windowed
  449.              mode.
  450.         -t : Use a different directory for temporary files. Like -d in
  451.              syntax.
  452.         -w : Enable an experimental software watchdog, which (with some
  453.              good luck) reboots the computer, if Clusse gets stuck.
  454.         -x : Disable XMS usage.
  455.  
  456.    3.2 Using the console
  457.  
  458.    3.2.1 Keys
  459.  
  460.     ──── Console keys: ─────────┬ Ctrl- ────────────┬ Alt-
  461.     F1   This help screen       │                   │
  462.     F2   Console connect        │ Connect to node   │
  463.     F5   Toggle band monitoring │ Action monitoring │
  464.     F8                          │                   │ Expire files now
  465.     F9   Start linking          │ Disconnect links  │ Hard disconnect links
  466.     F10  Shutdown               │ Reboot software   │ Dos shell
  467.  
  468.     CTRL - Page Up/Down     : Resize the console windows (receive/monitor)
  469.     CTRL - left/right arrow : Move cursor one word left/right
  470.     CTRL - Y or Escape      : Clear line
  471.     up/down arrows          : 10-line command history editor
  472.  
  473.    3.2.2 Console screen layout
  474.  
  475.          There are two or three "windows" on the screen. The first window
  476.        is a so-called status window, which is 3 lines high. The second
  477.        window is the console receiving window, which shows the received
  478.        text, when the console is connected to the BPQ node (CTRL-F2) or
  479.        the local DX cluster node (F2). The monitoring window is only
  480.        available on EGA and VGA monitors in the 43- and 50-line modes
  481.        (for now).
  482.  
  483.            Description of the status lines:
  484.  
  485.          The first line tells the Clusse version number, the local/network
  486.        user and node/link counts and the date & time. The second line is
  487.        used for the progress meter (visible during expiry) and free/used
  488.        XMS values (if XMS is available).
  489.  
  490.          Third one is the status line:
  491.  
  492.          OH7LZB Logged in      BPQ 143 Heap fr 250648 us  47616 BA Ins
  493.      User ─┘     │                  │             │         │   ││  │
  494.      Action ─────┘                  │             │         │   ││  │
  495.      BPQ free buffers count ────────┘             │         │   ││  │
  496.      Amount of free heap memory ──────────────────┘         │   ││  │
  497.      Amount of heap memory used ────────────────────────────┘   ││  │
  498.      Band, Action monitoring state ─────────────────────────────┴┘  │
  499.      Insert/Overwrite keyboard mode ────────────────────────────────┘
  500.  
  501.    3.2.3 Monitoring window
  502.  
  503.          If Action monitoring is enabled (press CTRL-F5) to toggle,
  504.        the monitoring window shows a history of actions that are shown
  505.        on the third status line. If band monitoring is enabled (F5
  506.        toggles), the window shows all traffic on all BPQ ports.
  507.  
  508.          Description of the band monitor header lines:
  509.  
  510.     a) A simple AX.25 frame:
  511.  
  512.          01:59:40 1:OH7RDA-2 » OH7AB-3  <I 17>
  513.               │   │     │        │       │  │
  514.     Timestamp ┘   │     │        │       │  │
  515.     BPQ port ─────┘     │        │       │  │
  516.     Originating station ┘        │       │  │
  517.     Recipient ───────────────────┘       │  │
  518.     Packet type ─────────────────────────┘  │
  519.     Sequence counters (tx, rx) ─────────────┘
  520.  
  521.     b) NET/ROM headers:
  522.  
  523.     Information (I):
  524.   02:00:36 1:OH7RDA-2 » OH7AB-3  <I 11> NR OH7RDA-2 » OH7AB     I 4/174 1-1
  525.      L3 protocol ───────────────────────┘    │          │       │  │    │ │
  526.      L3 originating node ────────────────────┘          │       │  │    │ │
  527.      L3 destination node ───────────────────────────────┘       │  │    │ │
  528.      L4 frame type ─────────────────────────────────────────────┘  │    │ │
  529.      L4 destination socket ────────────────────────────────────────┘    │ │
  530.      L4 tx sequence counter ────────────────────────────────────────────┘ │
  531.      L4 rx sequence counter ──────────────────────────────────────────────┘
  532.  
  533.          NET/ROM L4 frame types:
  534.            I  - Information
  535.            IA - Information Acknowledgement (ready to receive this frame)
  536.            NA - Information Not Acknowledged (please repeat this frame)
  537.            C  - Connection request
  538.            CA - Connection Acknowledgement
  539.            D  - Disconnection request
  540.            DA - Disconnection Acknowledgement
  541.  
  542.          NET/ROM flags:
  543.            Na - (in an I frame) Please repeat the frame identified by the
  544.                 rx sequence conter.
  545.            Fr - (more-follows) This is a fragment of a frame, more to
  546.                 follow.
  547.            Ch - Choke: Please don't transmit more information until further
  548.                 notice.
  549.  
  550.     c) ARP, IP, TCP, UDP and ICMP headers: you should be able to figure
  551.        them out, if you know anything about the protocols.
  552.  
  553.    3.3 Other general stuff
  554.  
  555.          Always have your computer's clock in UTC time, if you're
  556.        connecting to a cluster network. It uses UTC and i don't do any
  557.        conversions (yet). If your clock is not accurate and is often more
  558.        than just a few minutes behind or ahead, you should consider either
  559.        adjusting it (if possible) or installing a TSR which can compensate
  560.        the error (i use RIGHTIME). The system time is used for
  561.        timestamping DX etc. messages which are sent to the cluster network,
  562.        and wrong timestamps can confuse users and the network.
  563.  
  564.    3.4 Exit codes
  565.  
  566.          Clusse leaves an errorlevel on exit. It can then be evaluated
  567.        by the batch file running Clusse (clu.bat), which can either
  568.        restart Clusse, run some external programs or exit. If the
  569.        errorlevel is < (smaller than) 10, clusse cannot run and should
  570.        not be restarted. If it is >= (larger or equal to) 10, Clusse
  571.        can *usually* continue operating and should be restarted
  572.        automatically.
  573.  
  574.          0   - Normal exit. F10 pressed or SHUtdown command executed.
  575.  
  576.          1   - Error in configuration
  577.          2   - Invalid command line parameter
  578.          9   - Cannot run on this processor/OS version/memory manager/etc...
  579.  
  580.          10  - File I/O error
  581.          11  - Out of heap memory
  582.          12  - XMS error
  583.          20  - BPQ or PC/FlexNet error
  584.          21  - BPQ running out of buffers
  585.          99  - Clusse internal run-time error
  586.  
  587.          100 - Normal software reboot.
  588.  
  589.          If you ever see number 99, report the problem to me. It's a bug
  590.        which needs to be fixed. ALWAYS remember to tell me the run-time
  591.        error number AND THE MEMORY ADDRESS. It's vital, only it can tell
  592.        me where to look for the problem!
  593.  
  594.    3.5 Multitasking environments
  595.  
  596.          If your multitasking environment supports DPMI (at least Windows
  597.        and OS/2 do), you can start clusse with the command line parameter
  598.        -i, which tells clusse to tell the multitasker when it doesn't
  599.        have anything to do. The multitasker can then give the rest of the
  600.        time to other applications.
  601.  
  602.          Desqview: This program works under Desqview and uses the release
  603.        timeslice call if DV is detected. Direct video memory I/O is not
  604.        used under DV by default. You can also disable direct video with
  605.        the parameter -b, if using some other multitasker which doesn't
  606.        support fast direct video I/O transfers, and -v forces direct
  607.        video even if DV is detected. DV can handle direct video I/O when
  608.        used with QEMM.....
  609.  
  610.          Windows 3.1: I tried it once, seems to work. Included is a sample
  611.        .PIF file, which should work OK. You may have to give it some more
  612.        base memory than originally specified in the PIF. Prevent Windows
  613.        from using the serial ports which are used by the BPQ switch.
  614.  
  615.          Windows 95: Works just fine, Clusse is developed under it. BPQ
  616.        should be loaded in autoexec.bat, before the Windows multitasking
  617.        kernel. BPQCODE.386 is not required by Clusse, but Win95 needs a
  618.        keypress to start up, if it doesn't find the driver in the System
  619.        directory. Remove all of the serial ports you use for BPQ from the
  620.        Windows System Properties / Device Manager! The reboot cold/warm
  621.        commands cannot reboot the computer, as Win95 doesn't let a DOS box
  622.        do it. If you know a good way to get it done, let me know.
  623.  
  624.          Windows NT: I have no experience over this OS, but what i've
  625.        written for Windows 3.1 and '95, should apply to NT... with the
  626.        exception that NT is stable 8-)
  627.  
  628.          OS/2: I've heard it works, but did not try myself. Clusse should
  629.        detect OS/2 Warp 3.0 and later versions.
  630.  
  631.          Linux: No, i'm not working on a Linux version. I don't know
  632.        enough about Unix programming to start such a project. Perhaps
  633.        some day i'll find a good guy to do the porting job... But:
  634.        Clusse & BPQ runs quite well in dosemu! I had no problems
  635.        making BPQ talk to the kernel AX.25 layer through the dosemu
  636.        serial port simulation and a pty/tty pair. I'm running the latest
  637.        2.0 kernel (2.0.27 at the time of writing). If you actually
  638.        (intend to) use Clusse in Linux, let me know!
  639.  
  640.    3.6 Memory requirements
  641.  
  642.          At the moment Clusse takes around 300-400 Kb of base RAM with no
  643.        users. Memory is allocated dynamically: the more users and nodes
  644.        in the network, the more memory you need. You can follow memory
  645.        usage by monitoring the status line and the STatus D, STatus M
  646.        commands. It doesn't show some peaks, like allocating a buffer
  647.        for a disk operation, then releasing it before the status line
  648.        is updated again. Data stored in XMS must be moved to base memory
  649.        before using it. 500 Kb of base memory should usually be enough.
  650.        At any time, clusse must be able to allocate up to 64 Kb of heap
  651.        for a temporary buffer!
  652.  
  653.          On the status line you see three values that change during
  654.        execution. The first one is the BPQ free buffers count. The "fr"
  655.        value is the amount of available heap memory. When no heap memory
  656.        is available, Clusse exits with an error message and errorlevel 11.
  657.        The "us" value is the amount of heap memory currently allocated.
  658.  
  659.          Clusse can use XMS memory for storing database index files. It's
  660.        up to you if you want to use your valuable memory by loading the
  661.        big index files to XMS and provide blazingly fast searches or save
  662.        the memory and do the searches on disk... the choise is made in
  663.        db.ini. The DXCC index file is loaded into heap if no XMS is
  664.        available and moved to XMS if possible (there's no way to control
  665.        that). Use the command line switch -X to disable all XMS usage.
  666.        The STatus X command shows statistics about XMS usage.
  667.  
  668.  
  669.   ═══ 4. DX Cluster networking ════════════════════════════════════════════
  670.  
  671.    4.1 Linking to the PacketCluster network
  672.  
  673.          This has probably been the hardest part of the project. The
  674.        protocol used is NOT documented too well, I've had to reverse-
  675.        engineer the system. But it seems to work now, rather well.
  676.        The neighbouring PacketCluster systems don't notice the difference
  677.        between a Clusse and a "real" PacketCluster system. Clusse does
  678.        not interfere an established PacketCluster network, so you can
  679.        link in without fear. Of course, your neighbouring node sysops
  680.        might be afraid... please be gentle!
  681.  
  682.          The amount of links is only limited by the available memory.
  683.        All messages are not forwarded (for example, the PC mail protocol
  684.        is not included in Clusse yet), but generally everything else
  685.        seems to work OK. See appendix B for more information on supported
  686.        messages.
  687.  
  688.          An *IMPORTANT* note: Before linking to a PacketCluster, the
  689.        SysOp of the other end MUST tell his system that you should be
  690.        treated as a cluster node. This is done using the ADD/NODE
  691.        command. This applies to the listen-only mode too! He should
  692.        use the -BULLETIN parameter (eg. ADD/NODE OH7RBA-1 -BULLETIN) to
  693.        prevent PacketCluster from trying to forward any bulletins to
  694.        your system, as Clusse doesn't implement the bulletin forwarding
  695.        protocol.
  696.  
  697.          To allow a cluster node to link to your node, you must add an
  698.        incoming link in links.ini. This is done using the IN parameter
  699.        on the P line, ie. "P OH1RBI IN".
  700.  
  701.    4.2 Network topology
  702.  
  703.          In general, the PC protocol was designed to be used in star-
  704.        and chain-formed configurations. It does not work in circle-shaped
  705.        networks. Let me demonstrate some possible network configurations.
  706.  
  707.          Here's a simple chain:
  708.  
  709.            OH7LZB-1═════════OH7RBA-1═════════OH1RBI════════OH2RBH
  710.  
  711.          A star (a part of the Finnish network looks like this):
  712.  
  713.                    ╔═════OH6RDV
  714.                    ║
  715.                  OH1RCF═══╗       ╔════OH7LZB-1
  716.                           ╚═╗   ╔═╝
  717.                             ║   ║
  718.                             OH1RBI═════OH7RBA-1
  719.                               ║
  720.                               ║
  721.                  OH2RBG═════OH2RBH═══OH2RBQ
  722.  
  723.          A circle would look like this:
  724.  
  725.                OH6RDV══════════════════OH7RBA-1
  726.                  ║                       ║
  727.                  ║                       ║
  728.                OH1RBI══════OH2RBH══════OH2RBQ
  729.  
  730.          DX Cluster networks usually consist of more complicated
  731.        combinations of stars and chains. The main problem in the
  732.        PacketCluster linking protocol is it's inability to handle
  733.        multiple routes to a node. Circle-shaped networks are not handled.
  734.        If you command the nodes to form a circle, messages start to
  735.        travel around it. Duplicates are not catched properly, and
  736.        the network gets overloaded. The situation is called a LOOP,
  737.        and must be avoided like the plague.
  738.  
  739.          I've heard that the PacketCluster goes berserk very easily,
  740.        if it gets into a loop. Clusse does not. Duplicate DX spots
  741.        and WWV messages are filtered out. User and node addition
  742.        messages are not accepted, if the user or node is already in
  743.        the table. Deletions are not forwarded, if the user or node is
  744.        not in the table. And so on. But Clusse cannot make the existing
  745.        protocol any better, so loops are not allowed. If Clusse detects
  746.        it is in one, it disconnects the link it comes from, just to
  747.        protect the rest of the network. The link goes to the "Held"
  748.        state (new connection is not allowed), and must be released
  749.        using the LINk command.
  750.  
  751.    4.3 Listen-only links
  752.  
  753.          This makes an exception to what i just said about loops. Clusse
  754.        can create link in a listen-only mode, in which it only receives
  755.        DX spots, announcements and WWV information from the link, and
  756.        sends nothing back. The received information is not sent to other
  757.        links. Duplicate data is not taken in at all. This makes it
  758.        possible to have multiple links to the network, without creating
  759.        a cluster loop.
  760.  
  761.          Time for a warning: Listen-only links are against the protocol.
  762.        You might get into some trouble. If you're putting up your first
  763.        link, you should consider using a normal link. Please not that
  764.        the listen-only link is a PC link (ie. the operator of the node
  765.        you're linking to must tell his software that you should be
  766.        treated like a cluster node).
  767.  
  768.          Here's a real-world example (OH7RBA-1 is my local node):
  769.  
  770.             ╔════OH8RCA
  771.             ║
  772.           OH6RDV      OH7RBA-1
  773.             ║                    OH4RBB
  774.             ║                      ║
  775.           OH1RCF        OH2RBQ   OH5RBX
  776.             ║               ║      ║
  777.             ╚═══OH1RBI════OH2RBH═══╝
  778.  
  779.          OH8RCA is located in northern Finland. OH6RDV on the west coast.
  780.        OH1RBI is in  the southwest corner. OH2RBH and OH2RBQ are at the
  781.        south coast. OH7RBA is in mid-eastern Finland, OH4RBB and OH5RBX
  782.        are between OH7RBA and the west coast. Trough the Internet
  783.        gateways at OH7, OH1, OH2 and OH6, i can get a fast link either
  784.        to OH1RBI, OH2RBQ or OH6RDV. Using the VHF/UHF network (1k2 and
  785.        9k6 bit/s links) i can get to OH4RBB and OH8RCA. All the other
  786.        nodes are linked via the VHF/UHF network.
  787.  
  788.          Due to the lousy condition of the network, either the link from
  789.        OH1RBI to OH2RBH or the one from OH1 to OH6 is broken most of the
  790.        time. If it works, the round-trip time from OH2 to OH8 is probably
  791.        around 20 minutes. I'd like to get the DX spot in before the station
  792.        moves off from the frequency. Where would I link OH7RBA-1, if i
  793.        could link to one place only??? (Because Clusse doesn't forward
  794.        PacketCluster mail, and the PacketCluster users still think they
  795.        need it, we cannot configure OH7RBA-1 as the central node for a
  796.        star-shaped network.)
  797.  
  798.          .... got the point ?  . . .  Good.
  799.  
  800.          I create a "normal" link to OH1RBI, and listen-only links to
  801.        OH2, OH4 and OH6. This way, i get most of the spots in reasonable
  802.        time, and the network is happy. The only problem is that all
  803.        messages originated from OH7RBA-1 and messages that are pointed
  804.        to OH7RBA-1 only (like "talk" messages) must travel via OH1RBI
  805.        only. Using the Talk feature for chatting to the other end of the
  806.        network is not fun at all.
  807.  
  808.          When initiating a listen-only link, Clusse must announce it's
  809.        node callsign, otherwice the other end won't send any messages.
  810.        This callsign cannot be the one that is used for the normal link
  811.        or any other listen-mode links, because the PacketCluster would
  812.        then see two routes to the same node. The second callsign must be
  813.        specified on the I line in links.ini.
  814.  
  815.          ... Yeah, listen-only links were not my idea. I stole it from
  816.        the clx authors. Thanks, guys, and keep up the good work! Feel
  817.        free to steal some of mine, too! 8-)
  818.  
  819.    4.4 PacketCluster version compatibility
  820.  
  821.          Clusse has been succesfully linked (at least) with PacketCluster
  822.        versions 5.3-05, 5.4-32 and 5.4-77. All versions after 5 should be
  823.        OK. The PC linking protocol changed significantly when version 5
  824.        came out, so you WILL have trouble if you try linking with a v4
  825.        system.
  826.  
  827.          I've successfully linked Clusse to a clx system. Linking with
  828.        DXNet running on the same computer didn't work on first try.
  829.  
  830.    4.5 Linking two Clusse systems
  831.  
  832.          It works now. I did what i promised not to do, and made incoming
  833.        PC links work. See links.ini....
  834.  
  835.          I've been thinking about my own, binary (not human-readable)
  836.        and possibly packed linking protocol. (I'm looking for some good
  837.        code to compress small, 100-5000 byte frames with good compression
  838.        rates). Yeah, it will allow circle-shaped networks too.
  839.  
  840.  
  841.   ═══ 5. Files ════════════════════════════════════════════════════════════
  842.  
  843.    5.1 File descriptions and paths
  844.  
  845.      o  Executables: clu\
  846.  
  847.   clusse.exe   - The cluster software itself.
  848.   setup.exe    - The configuration editor. Used to create and modify
  849.                  the binary configuration file, clusse.cfg. Also
  850.                  includes a simple 64k ascii editor (beats DOS Edit).
  851.  
  852.      o  Document files:  clu\doc\
  853.  
  854.   intro.txt    - A quick introduction, "fact sheet" for Clusse. When
  855.                  someone asks you a silly question like "what the heck
  856.                  is Clusse", mail this one to him.
  857.   clusse.doc   - This file. A kind of manual for the program.
  858.   speech.doc   - Documentation for the Clusse Speech Kit.
  859.   tech.doc     - Technical stuff mainly for other software developers
  860.                  and people interested in the inner happenings of
  861.                  Clusse.
  862.   whatsnew.txt - Revision history. See the end of the file for additions
  863.                  in the latest versions when you're upgrading from a
  864.                  previous version.
  865.   clusse.faq   - Frequently Asked Questions (and the answers).
  866.   db.ini       - A sample database configuration file with examples for
  867.                  all of the supported database types.
  868.  
  869.     o  Configuration files: clu\
  870.  
  871.   clusse.cfg   - The master configuration. This file is *binary*, it
  872.                  cannot be edited by hand! Use setup.exe instead!
  873.   links.ini    - Here you configure the packetcluster links. (1 (2
  874.                  Delete this to disable linking.
  875.   unproto.ini  - Configuration for the broadcasting user interface. (2
  876.   db.ini       - Database configuration. This file is in the doc\ directory
  877.                  by default, you have to move it here if you want to use
  878.                  databases. (2
  879.   charsets.ini - Character conversion table config. You may delete this
  880.                  if it's unnecessary. (2
  881.  
  882.     o  Text files for users: clu\text\
  883.  
  884.   clusse.hlp   - The help file for users (1
  885.                  This file is in Finnish, an English version is included
  886.                  as english.hlp - rename it to clusse.hlp if you want
  887.                  (for some reason, most of you do).
  888.   fortunes.txt - The fortune database file (1 (2
  889.   info.txt     - Info file. Users can get this using the I command.
  890.                  Tells something about the station, equipment, the
  891.                  sysop etc... (2
  892.   login.txt    - This is sent to each user on login, right after the
  893.                  QTH/information string in clusse.ini. Length limited to
  894.                  1700 bytes. (2
  895.   news.txt     - System news file. Use this to notify the users of changes
  896.                  in the software, club news etc... See the file for details
  897.                  on syntax. (1 (2
  898.   newuser.txt  - This file is sent to each user when he connects the local
  899.                  node for the first time (no record found in users.clu). (2
  900.  
  901.     Notes:
  902.  
  903.    (1: Don't edit these files while the program is running (in dos shell
  904.        a multitasking environment) - they have an index file which is
  905.        only updated at startup.
  906.    (2: You can delete this file if you don't need the feature, Clusse
  907.        won't mind.
  908.     
  909.     o  Log files: clu\log\
  910.  
  911.   clogyyyy.mm  - yyyy is the year, mm is the month. These are the logs.
  912.   error.log    - Run-time errors are logged here.
  913.  
  914.     o  Binary files: clu\data\
  915.  
  916.   announce.clu - Announcements are saved here...
  917.   convpers.clu - Convers /personal texts
  918.   dx.clu       - The DX file
  919.   frtnindx.clu - Index file for fortunes.txt.
  920.   helpindx.clu - Index file for clusse.hlp. Reindexed if the date of the
  921.                  help file has changed.
  922.   last.clu     - Stores a list of last users and happenings (crashes, etc).
  923.   mid.clu      - Message ID table
  924.   netusers.clu - Network user data
  925.   nodes.clu    - Network node data
  926.   status.clu   - Counters and position pointers for other files (mid.clu),
  927.                  window sizes, etc.
  928.   users.clu    - Local user data
  929.   www.clu      - WWV announcements
  930.  
  931.          You can delete any binary file you (don't) like. Clusse will
  932.        create a new one. Don't try to edit them if you don't really
  933.        know what you're doing. The data and log directories are created
  934.        by the program. The rest are not.
  935.  
  936.     o  Database files: clu\db\
  937.  
  938.   cty.db       - The CT-format DXCC database in ASCII
  939.   dxcc.cdb     - DXCC database in binary format
  940.   dxcc.idx     - An index file for the previous one
  941.   *.ful        - A PacketCluster-type database
  942.   *.idx        - An index file for a database
  943.   *.inf        - Information file for a database (in ASCII, required,
  944.                  written by the sysop)
  945.  
  946.     o  User data files: clu\userdata\
  947.  
  948.   <callsign>.fl - The dx filters for the particular user. You can erase
  949.                   the filter settings of the user by deleting the file.
  950.  
  951.     o  Public (user) directory: clu\user\
  952.  
  953.          The files in this directory are accessible by users (access can
  954.        be controlled per user group in the setup). This directory is
  955.        intended for exchanging files between users.
  956.  
  957.     o Public uploading directory: clu\user\incoming\
  958.  
  959.          This directory is intended to be a directory where all users can
  960.        upload files.
  961.  
  962.     o PG "Plugin" external applications: clu\pg\
  963.  
  964.          Programs placed in this directory can be executed by the user.
  965.        They are specifically written for the PG interface, so you cannot
  966.        just put any program in the pg directory and expect it to work.
  967.        The PG interface in Clusse is mostly compatible with the one in
  968.        the famous FBB BBS software. See the interface specifications in
  969.        tech.doc, if you're interested in writing PG applications for
  970.        Clusse.
  971.  
  972.          The file pg.txt in the pg directory is shown to the user when
  973.        the PG command without any parameters is given. The file should
  974.        describe the available PG applications.
  975.  
  976.  
  977.    5.2 Databases
  978.  
  979.          Databases are stored in the clu\db\ directory. They are ascii
  980.        files, which all can be edited by the sysop. When starting up,
  981.        Clusse first reads db.ini, then checks all ascii database files
  982.        and their respective index (.idx) files. If the database is new
  983.        (no index file found) or the date/time records of the files differ,
  984.        Clusse rebuilds the index.
  985.  
  986.          Databases are configured in db.ini. The sample configuration
  987.        file is in the doc\ directory. Move it to the Clusse root directory
  988.        and edit it to suit your needs.
  989.  
  990.          Each database also needs an information file to tell users, how
  991.        the particular database is used and what does it include (see
  992.        db.ini). This .inf file is written by the sysop. It's a plain
  993.        ASCII file. It's shown to the user when he issues a Find command
  994.        for the database, but doesn't specify a keyword to be searched for.
  995.        You, the sysop, must usually create the file.
  996.  
  997.          The DXCC database, included in the distribution, is an
  998.        exception. It is not necessary to configure it in db.ini! It is
  999.        also converted to binary format (dxcc.cdb) to make reading at
  1000.        run-time easier. It is used trough the Prefix command, not the
  1001.        Find command!
  1002.  
  1003.    5.2.1 PacketCluster-type databases
  1004.  
  1005.          The database system of Clusse is compatible with the PacketCluster
  1006.        databases, for example the DB0SDX QSL + address database. As a
  1007.        PacketCluster imitation, it is extremely simple and stupid. Only
  1008.        one (!) keyword per information block is allowed (i'll fix this one
  1009.        soon). A line "&&" marks the end of a block. The first line of a
  1010.        block includes the keyword, and the subsequent lines include the
  1011.        information related to the keyword. Keywords are not case sensitive.
  1012.  
  1013.          Here's two sample blocks in a database file:
  1014.  
  1015.        ---- clip clip ----
  1016.        keyword
  1017.        Information related to the keyword
  1018.        more information related to the keyword
  1019.        even more information related to the keyword
  1020.        &&
  1021.        anotherkeyword
  1022.        Information related to anotherkeyword
  1023.        more information related to anotherkeyword
  1024.        even more information related to anotherkeyword
  1025.        &&
  1026.        ---- clip clip ----
  1027.  
  1028.    5.2.2 The DB0SDX QSL database
  1029.  
  1030.          The sample db.ini file included in the distribution is the
  1031.        configuration for the DB0SDX QSL and address database. The
  1032.        database includes over 25 000 QSL information entries and over
  1033.        10 000 mailing addresses.
  1034.  
  1035.          The database is available on the internet via anonymous ftp
  1036.        on this site:
  1037.  
  1038.            ifsws1.sozialforschung.uni-stuttgart.de:
  1039.                /pub/packclus/db/dbyymmdd.zip
  1040.  
  1041.          The database is maintained by Lothar, DL1SBF, who can be
  1042.        contacted using packet radio at the address DL1SBF @
  1043.        DB0SDX.#BW.DEU.EU. He doesn't have an internet address, but you
  1044.        could try to reach him trough an internet-packet gateway using
  1045.        the internet address dl1sbf%db0sdx@db0fho.et-inf.fho-emden.de.
  1046.        It's a one-way route, so don't except replies via the Internet.
  1047.  
  1048.          Frank, DL1SBR takes care of distributing the database, and
  1049.        can be mailed at ross@ifsws1.sozialforschung.uni-stuttgart.de
  1050.        or DL1SBR @ DB0SDX.#BW.DEU.EU.
  1051.  
  1052.    5.2.3 The DXCC database
  1053.  
  1054.          Clusse supports the DXCC database format of the K1EA CT logging
  1055.        software. I try to include the latest CTY.DAT file with Clusse.
  1056.        It is maintained by Jim Reisert, AD1DC. I'd like to thank Jim for
  1057.        allowing me to use the file in Clusse.
  1058.  
  1059.          The latest CTY.DAT can always be found on the internet via
  1060.        anonymous FTP from the following sites:
  1061.  
  1062.           ftp://maspar.maspar.com/pub/k2mm/ct-files/cty-??????.zip
  1063.           ftp://ve7tcp.ampr.org/software/ct/cty-??????.zip
  1064.  
  1065.        where the ?????? is replaced with the date of the distribution.
  1066.        I try to include the latest version in the Clusse distributions.
  1067.        If you have updates for the file, please mail them to Jim,
  1068.        reisert@eng.pko.dec.com.
  1069.  
  1070.          Description of the CTY.DAT file format, exctracted from
  1071.        HISTORY.CTY of the original database distribution:
  1072.  
  1073.       --------------------------------------------------------------------
  1074.  
  1075.          CTY.DAT is a new file format for CT Version 9.  It includes more
  1076.        information than the .CTY files for previous versions of CT.  This
  1077.        allows CT to calculate, in real time, beam heading and sun times.
  1078.        It also means that a single file can be used for all DX contests.
  1079.        The format is as follows.  Note that the fields are aligned in
  1080.        columns and spaced out for readability only.  It is the ":" at the
  1081.        end of each field that acts as a delimiter for that field:
  1082.  
  1083.                 Column  Length  Description
  1084.         ------    ------    -----------
  1085.            1      26    Country Name
  1086.           27       5    CQ Zone
  1087.           32       5    ITU Zone
  1088.           37       5    2-letter continent abbreviation
  1089.           42       9    Latitude in degrees, + for North
  1090.           51      10    Longitude in degrees, + for West
  1091.           61       9    Local time offset from GMT
  1092.           69       6    Primary DXCC Prefix (A "*" preceeding
  1093.                 this prefix indicates that the country
  1094.                 is on the DARC WAEDC list, and counts
  1095.                 in CQ-sponsored contests, but not ARRL-
  1096.                 sponsored contests).
  1097.  
  1098.         Alias DXCC prefixes (including the primary one) follow on consecutive
  1099.        lines, separated by ",".  If there is more than one line, subsequent
  1100.        lines begin with the "&" continuation character.  A ";" terminates
  1101.        the last prefix in the list.
  1102.  
  1103.          The following special characters can be applied to an alias prefix:
  1104.  
  1105.         (#)    Override CQ Zone
  1106.         [#]    Override ITU Zone
  1107.         <#/#>    Override latitude/longitude
  1108.         {aa}    Override Continent
  1109.  
  1110.       --------------------------------------------------------------------
  1111.  
  1112.    5.2.4 The Buckmaster HamCall CD-ROM callbook
  1113.  
  1114.          Clusse supports the HamCall CD-ROM callbook published by Buckmaster
  1115.        Publishing. The CD-ROM must probably be from April 1995 or later
  1116.        distribution. Clusse requires that BUCKTSR.EXE is loaded. It is
  1117.        located in the \API\ directory of the CD. Older CD's don't include
  1118.        this utility.
  1119.  
  1120.          See db.ini for details on configuration... Be sure to use the
  1121.        LATEST version of BUCKTSR.EXE you have! When you purchase a new CD,
  1122.        use the version on it.
  1123.  
  1124.          The CD-ROM can be obtained from Buckmaster Publishing, Route 4,
  1125.        Box 1630, Mineral, Virginia 23117. Their email address is
  1126.        info@buck.com. They also have a web page at http://www.buck.com/.
  1127.        I'd like to thank Buckmaster Publishing for donating me a copy
  1128.        of the CD (for development purposes).
  1129.  
  1130.    5.2.5 Other CD-ROM callbooks
  1131.  
  1132.          Mail me an accurate description of the databate format, the
  1133.        preferred ways to search a record from the database, and a copy
  1134.        of the CD (i need it for testing), and i'll support the CD.
  1135.  
  1136.    5.2.6 Other databases available (the ones i know of)
  1137.  
  1138.          Chuck Strobel, K6PBT maintains a set of more or less interesting
  1139.        PacketCluster-type databases, including an IOTA table and a Contest
  1140.        calendar. They're available on the Internet at ftp.pinsight.com,
  1141.        directory /pub/K6PBT/.
  1142.  
  1143.          Some databases are collected at ftp.funet.fi, directory
  1144.        /pub/ham/packet/cluster/database/.
  1145.  
  1146.    5.3 Miscellaneus notes
  1147.  
  1148.          I recommend using a good disk caching program. One with a
  1149.        write-back cache (Smartdrive NO GOOD!). I prefer HyperDisk.
  1150.        NCache2 does a good job. A lot of Clusse actions include disk
  1151.        operations, and with a slow system they can be painfully slow.
  1152.  
  1153.  
  1154.   ═══ 6. Access controls, privilege groups ════════════════════════════════
  1155.  
  1156.    6.1 General blah-blah-blah
  1157.  
  1158.          Clusse includes a quite powerful system for defining what each
  1159.        user is allowed to do. Users are divided to up to 20 user groups
  1160.        (each user is in one group). One group is defined as a default
  1161.        user group for new users, one group is defined as the operator
  1162.        group and one (group 20) is the superuser group. Setup.exe is
  1163.        used to define what users in each user group are allowed to do.
  1164.  
  1165.           Users can be moved from group to group using the EUser
  1166.         cluster command. The superuser group is usually allowed to
  1167.         do just about anything, so no users should directly be
  1168.         moved to this group permanently. The SU command is used to enter
  1169.         the superuser password to gain superuser privileges for the
  1170.         duration of the session. I suggest you to move operators to an
  1171.         operator group (default 18), which is then allowed to use the
  1172.         SU command.
  1173.  
  1174.           The "System operator callsign" in setup/"Administrative
  1175.         settings" is used to define the master operator for the node.
  1176.         The user with this callsign is automatically moved to the
  1177.         group number set as "Operator group" in the same window. The
  1178.         master operator can then use the EUser command to move other
  1179.         users to the operator group.
  1180.  
  1181.    6.2 Things NOT to do (general security stuff)
  1182.  
  1183.           Don't allow all users to execute programs in a directory
  1184.         they can upload to.
  1185.  
  1186.           Don't use a simple password with a lot of zeroes. The file
  1187.         and dos commands are dangerous - any user could mess up
  1188.         your computer.
  1189.  
  1190.           Don't let users to use the DOS command. It's parameters
  1191.         are actually passed to COMMAND.COM - it allows users to do
  1192.         just about anything, even if they aren't allowed to use the
  1193.         file commands in other directories than the user directory.
  1194.         The DOS command bypasses all restrictions!
  1195.  
  1196.           Don't use the DOS or RUN commands from a remote location to
  1197.         run programs which might ask you for run-time feedback
  1198.         (eg. a prompt "Delete all files (Yes/No)?"). You can not answer
  1199.         it remote, and clusse will *freeze*! You can use redirection
  1200.         (< input.txt > output.txt) to provide them with input, though.
  1201.  
  1202.           If you let users to use the RUN command in the user
  1203.         directory, be VERY careful what programs you place in there!
  1204.         Packers (pkzip, arj etc), for example, are very dangerous,
  1205.         since they can be instructed to write to and read from
  1206.         just about anywhere! Self-exctracting (EXE-type) archive
  1207.         files are also dangerous.
  1208.  
  1209.  
  1210.   ═══ 7. Broadcasting user interface ══════════════════════════════════════
  1211.  
  1212.          I've been working on an FBB-stylish unproto interface for
  1213.        the DX cluster system. At the moment, DX spots, announcements
  1214.        and WWV data are sent as UI packets. Unproto list requests and
  1215.        uplinking are being planned.
  1216.  
  1217.          The ports and digipeater paths used for sending UI packets are
  1218.        configured in unproto.ini. You can rename or delete this file to
  1219.        completely disable the feature.
  1220.  
  1221.          Messages originated from the node to all listeners are sent to
  1222.        address 'DX'. Answers for requests have the recipient's callsign
  1223.        as the recipient address. See tech.doc for explanation of the
  1224.        protocol.
  1225.  
  1226.        
  1227.   ═══ 8. Troubleshooting ══════════════════════════════════════════════════
  1228.  
  1229.          Errare humanum est.
  1230.  
  1231.          Run-time errors: You might get one of these, due to the bugs in
  1232.        the program. Remember, all computer programs are written by human
  1233.        beings, who tend to make errors. This is really an early version
  1234.        (far from 1.0), so crashes can be expected from time to time 8-)
  1235.  
  1236.          If you get a run-time error, tell me the error number AND the
  1237.        address, and the situation when you got the error. Always remember
  1238.        to mention the version of Clusse you're running, and before
  1239.        reporting, see the whatsnew file of the latest clusse version
  1240.        and check if i already have fixed the problem! Most run-time errors
  1241.        are logged to error.log, which can be revieved using the LErrors
  1242.        command. I appreciate error reports very much, i can't fix an error
  1243.        i don't know about!
  1244.  
  1245.  
  1246.   ═══ 9. Getting the latest version & contacting the author ═══════════════
  1247.  
  1248.    9.1 Clusse distribution sites
  1249.  
  1250.          The main distribution media for Clusse is the Internet. The
  1251.        latest version of Clusse is always available on these sites:
  1252.  
  1253.          WWW: http://zone.pspt.fi/clusse/
  1254.               http://www.oh7rba.ampr.org/clusse/ (ONLY IF you really are
  1255.                                                   behind amprnet routing!)
  1256.          FTP: ftp.funet.fi: /pub/ham/packet/bbs/cluster/clusse/clu????.zip
  1257.               ftp.oh7rba.ampr.org: /pub/oh7lzb/clu/clu????.zip (Only if...)
  1258.  
  1259.          ???? is the version number. 030 means 0.30, NOT 3.0 ! Yes, it's
  1260.        still FAR from 1.0 !  8-)
  1261.  
  1262.          If you don't have Internet access, and you don't know anyone
  1263.        who has, you can send a formatted 1.44" diskette and a SASE to
  1264.        my address below. SASE is a Self-Addressed, Stamped Envelope.
  1265.        Include the postage in Finnish or US funds! Please no IRC's.
  1266.        Mailing a diskette overseas from Finland can cost up to 4 US
  1267.        dollars (depends on the package), so a single greenstamp might
  1268.        not be enough to cover my expenses.
  1269.  
  1270.    9.2 Clusse mailing lists
  1271.  
  1272.          If you're on Internet, and have a valid email address, you
  1273.        can subscribe to one of the two mailing lists i have put up for
  1274.        Clusse system operators.
  1275.  
  1276.          The Clusse Discussion mailing list is an open forum for
  1277.        discussing Clusse-related problems and ideas. Anyone can mail to
  1278.        the unmoderated mailing list. The Clusse Announcements mailing
  1279.        list is only used for announcing new versions of Clusse and
  1280.        related utilities. It is moderated (by me) and is not intended
  1281.        for public discussion. Any mail sent to the list address ends up
  1282.        in my mailbox, and i will forward it to the list if i see it fits
  1283.        the topic.
  1284.  
  1285.          The reason for two mailing lists is the fact that a lot of us
  1286.        (including me) are getting more and more email each day, and may
  1287.        not be interested in following the discussion, but still want to
  1288.        keep up with the latest versions. The Clusse Announcements list
  1289.        is for these people, for now it has only had a single message in
  1290.        a month or two. All mail sent to the Announcements list also goes
  1291.        to the Discussion list, so you only need to be on one of the lists!
  1292.  
  1293.          Subscribing to the lists: Send a message to the REQUEST address
  1294.        of the list (below), with the word "subscribe" in the title of
  1295.        the message.
  1296.  
  1297.          Unsubscribing the lists: Send a message to the REQUEST address
  1298.        of the list, with the word "unsubscribe" in the title of the
  1299.        message. DO NOT send a message to the LIST address or ME, the
  1300.        software robot behind the REQUEST address is there to serve you!
  1301.  
  1302.          If your email address is changing, first send an unsubcription
  1303.        message from your old address and then subscribe again from the
  1304.        new address.
  1305.  
  1306.          To submit a message to the mailing list, send a message to the
  1307.        "submissions" address.
  1308.  
  1309.          And then, the addresses you've all been waiting for:
  1310.  
  1311.            Clusse Announcements:
  1312.              Requests:     clusse-ann-request@zone.pspt.fi
  1313.              Submissions:  clusse-ann@zone.pspt.fi (moderated!)
  1314.  
  1315.            Clusse Discussion:
  1316.              Requests:     clusse-request@zone.pspt.fi
  1317.              Submissions:  clusse@zone.pspt.fi
  1318.  
  1319.    9.3 The author (that's, me!)
  1320.  
  1321.          If you have a question, please read the file clusse.faq, and
  1322.        see if it is already answered there. People tend to ask the
  1323.        same questions over and over, and the Frequently Asked Questions
  1324.        (FAQ) file is meant to reduce unnecessary message traffic. If your
  1325.        question is not answered in this document or the FAQ, or you have
  1326.        some kind of feedback (positive or negative), feel free to mail
  1327.        me.
  1328.  
  1329.          If you want to contact me for some reason, here are the
  1330.        suggested methods:
  1331.  
  1332.        Internet email (preferred): hessu@pspt.fi
  1333.        Amprnet email (a good one): oh7lzb@.oh7rba.ampr.org
  1334.        Ax.25 packet (sloooow....): oh7lzb@oh7rba.fin.eu
  1335.        World Wide Web (graphic!!): http://zone.pspt.fi/~oh7lzb/
  1336.        Amprnet web (as above....): http://zone.oh7rba.ampr.org/~oh7lzb/
  1337.  
  1338.          Snail mail:
  1339.        (Always include a SASE if you want me to answer your letter!
  1340.        I'm a poor student 8-) Please no IRC's.)
  1341.  
  1342.             Heikki Hannikainen
  1343.             Blueberry Road 17
  1344.             70280 Kuopijo
  1345.             Finland
  1346.  
  1347.          Don't hesitate from sending money, beer, pizza, email, QSL's,
  1348.        whatever you think might please me and make me fix another bug...
  1349.        A funny postcard can save one's day!
  1350.  
  1351.  
  1352.   ═══ Appendices: A - Things To Do ════════════════════════════════════════
  1353.  
  1354.          Please note that this list is NOT in order of priority! If
  1355.        something is already mentioned here, there's no need to ask me
  1356.        to work on it...
  1357.  
  1358.      - Kill all the bugs. At least all I can find. When you see one,
  1359.        report it!
  1360.      - Finish the broadcasting user interface protocol.
  1361.      - Announcement and talk filtering system for users.
  1362.      - An additional transmit buffer queue to prevent BPQ from running
  1363.        out of frame buffers.
  1364.      - A new, better cluster linking protocol.
  1365.      - A mail system (PBBS compatible?).
  1366.      - Support for multiple separate language & help files.
  1367.      - Timed execution of DOS commands and programs.
  1368.      - Direction, distance, MUF, sunrise/sunset time calculations based
  1369.        on the prefix database. I need some formulas for this!
  1370.      - More remote sysop commands. More, more, more!
  1371.      - Backscrolling for console windows, separate monitoring of a
  1372.        particular user / link.
  1373.      - Automatic reconnection of users disconnected due to a Clusse crash,
  1374.        reboot or shutdown. Will only work for users connected directly (one
  1375.        L2 hop) to Clusse.
  1376.  
  1377.    Bugs I am aware of (any ideas how i could fix them?):
  1378.  
  1379.      - On CGA and MDA monitors, the screen is sometimes garbled when
  1380.        returning from DOS shell.
  1381.  
  1382.  
  1383.   ═══ Appendices: B - Keeping the lawyers happy ═══════════════════════════
  1384.  
  1385.     - MS-DOS, Microsoft Windows and Windows 95 are registered trademarks of
  1386.       Microsoft Corporation.
  1387.     - DesqView and QEMM are registered trademarks of Quarterdeck Office
  1388.       Systems.
  1389.     - OS/2 is a registered trademark of International Business Machines, Inc.
  1390.     - CT is a trademark of K1EA Software, a division of Harvard Radio.
  1391.     - PacketCluster is a trademark of Pavillion Software, a division of
  1392.       Harvard Radio.
  1393.     - PKUNZIP is a trademark of PKWARE, Inc.
  1394.     - HamCall is a trademark of Buckmaster Publishing.
  1395.     - Any trademarks mentioned in this file but not included here by
  1396.       accident are also acknowledged....
  1397.  
  1398.  
  1399.